home *** CD-ROM | disk | FTP | other *** search
Text File | 1988-05-07 | 60.9 KB | 1,710 lines |
-
-
-
-
-
-
-
- APPLICATIONS GENERATOR SYSTEM
- By R.L. Coppedge, CDP
-
- Please note:
-
- If you are not interested in creating your own application please
- do not spend an abundance of time on this Appendix, as it may be
- confusing to someone who is mainly a user, and unfamiliar with
- Dbase III+.
-
- Section Topic Page #
-
- Section C1.0 Introduction. . . . . . . . . . . . . . 1
- C1.1 What you need to Begin . . . . . . . . . . . 1
-
- Section C2.0 Installing AGS Itself. . . . . . . . . . 3
- C2.1 Installing AGS from an Archive (ARC) file . . 3
-
- Section C3.0 Installing Create. . . . . . . . . . . . 4
-
- Section C4.0 Running CREATE . . . . . . . . . . . . . 5
- C4.1 The MAIN Database . . . . . . . . . . . . . . 5
- C4.2 The Create Database . . . . . . . . . . . . . 7
- C4.3 Editing the CREATE Database . . . . . . . . . 10
- C4.4 Building the Create Files . . . . . . . . . . 11
- C4.5 A list of Create Files . . . . . . . . . . . 12
-
- Section C5.0 Modifying Generated Code and Databases. 14
- C5.1 A List of Generated Code and Files . . . . . 14
- C5.2 Modifying Create-Generated Code . . . . . . . 14
-
- Section C6.0 Modifying the Main Programs. . . . . . . 16
- C6.1 Data Verification . . . . . . . . . . . 17
-
- Section C7.0 Starting your System . . . . . . . . . . 19
-
- Section C8.0 Adding more Applications . . . . . . . . 20
-
- Section C9.0 Don't do the Following! . . . . . . . . 21
-
- Section C10.0 Registration . . . . . . . . . . . . . . 22
-
- Section C11.0 Thanks and Thoughts . . . . . . . . . . 24
-
- Section C12.0 Limitations. . . . . . . . . . . . . . . 25
-
-
-
-
-
-
-
-
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
-
- Illustrations, Figures and Good Stuff Like That
-
-
- Figures: Page:
- Figure C-1 Subdirectory Structure . . . . . . . . . 2
- Figure C-2 Create's Main Menu . . . . . . . . . . . 5
- Figure C-3 The Main Database . . . . . . . . . . . 5
- Figure C-4 Main.Dbf Entry Screen . . . . . . . . . 7
- Figure C-5 The CREATE Database . . . . . . . . . . 8
- Figure C-6 Create Edit Screen . . . . . . . . . . . 10
- Figure C-7 Create's Initial Screen . . . . . . . . 11
- Figure C-8 CREATE's Main Screen . . . . . . . . . . 12
- Figure C-9 VERIFY Databases . . . . . . . . . . . . 17
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C1.0 Introduction.
-
- When creating a new application through the AGS, it is
- assumed that the person doing so has a relatively complete
- understanding of both the Dbase III+ syntax, and the programming
- language itself, as well as knowledge of MS-DOS commands.
-
- C1.1 What you need to Begin
-
- Prior to beginning anything with the AGS, the user should
- have the following items prepared:
-
- 1> a subdirectory layout will be installed automatically
- on installation as detailed in Figure C-1. The user should
- ensure that nothing would be upset by such activity.
-
- 2> Dbase III+ should be installed properly, as well as
- the MS-DOS CONFIG.SYS file, which should at the minimum have the
- command FILES=20. Also, the CONFIG.DB file located in the Dbase
- III+ subdirectory should NOT have the "COMMAND = ASSIST" line in
- it.
-
- 3> A directory should be made available that contains the
- files AGS.ARC, and the program used to de-Archive it.
-
- 4> The user should know the name of the database. For
- this appendix, the application shall be known as APP, and is
- contained in the directory \DBDATA\APP. Although this is not
- needed knowledge for installing the AGS, it will be critical in
- order to use it.
-
- 5> A list of all necessary Sort Orders is made (including
- field names)
-
- 6> A text editor should be available, (the program files
- are too big for Dbase III+'s MODI COMM command).
-
- 7> You are familiar with the database function you wish to
- use and how you want it to work.
-
- 8> You are willing to work through the documentation!
-
- Please note that we will assume that the database structure
- of APP is identical to that of TEST in Section 4.1 of the Main
- Documentation.
-
-
-
-
-
-
-
-
- 1
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- --
- _____________________________________________________________
- | |
- | |
- | |
- | |
- | ROOT |
- | \ |
- | \DBDATA--\------"App" |
- | \-----Help |
- | \----Create |
- | \---Main |
- | |
- | \DBASE Stores Dbase III+ itself. |
- | |
- | \DBDATA\HELP Stores the generic Command Line |
- | Help Databases (Section 10.2) and Documentation |
- | |
- | \DBDATA\CREATE Stores the Create Programs |
- | when not in use (for future uses) |
- | |
- | \DBDATA\MAIN Stores the copies of the Main |
- | Programs for future use and .BIN files |
- | |
- | \DBDATA\APP Stores all programs and Data |
- | relevant to Application APP |
- |___________________________________________________________|
- Figure C-1 Subdirectory Structure
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C2.0 Installing AGS Itself.
-
-
- The file AGS.ARC contains all programs and files (aside from
- Dbase III+ itself and your database file you create) necessary to
- build your application. It also will build a subdirectory
- structure, as detailed in Figure C-1, automatically building
- \DBDATA, \DBDATA\CREATE, \DBDATA\MAIN, and \DBDATA\HELP. It will
- be up to you to build \DBDATA\APP (where APP is the name of both
- the application, subdirectory, and the database itself. You give
- it whatever name you want, as long as it is a valid Dbase III+
- database name).
-
- C2.1 Installing AGS from an Archive (ARC) file
-
- If you have downloaded the AGS from a BBS, and have the file
- "AGS.ARC", you have apparently de-ARChived it enough to get this
- file from it (APPENDC.TXT). If not, do the following:
-
- 1> Move AGS.ARC to any empty subdirectory.
- 2> De-archive the files:
- ARCE AGS<Enter> *(this may change, depending on the de-ARC
- program)
- 3> Begin the installation program. Enter:
- INSTALL <Path><Enter>
- <Path> is the data directory where Dbase is residing.
- Traditionally, this would be:
- INSTALL \DBASE <Enter>
-
- And then sit back and watch the system go to town. The
- system will:
-
- 1> Create Necessary subdirectories.
- 2> Move proper files to proper places.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 3
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C3.0 Installing Create.
-
- Assuming that you have performed tasks #1,2 and 3 in the
- previous section, you are ready to start Create. This is the
- first step in making an application using the AGS.
-
- From now on, you must be in Dbase III+ to make all of this
- work. This is so it doesn't unwittingly erase anything crucial.
- As stated before, we're going to call the application to be
- created "APP". We need to Create a new directory, \DBDATA\APP.
- So let's get on with it, ok? Commands underlined are to be
- entered by you:
-
- Dbase AGSCr<Enter> (This starts Dbase III+ for you)
-
- This is run only when you are initially setting up the file.
- If you've already done this, ignore this step. The system will
- verify that you in fact want to perform this step, and then will
- prompt you with:
-
- What is the Database's Name :
-
- Where you would enter "APP" (or whatever you were calling yours).
- Again, the system will verify your response, and perform the
- following:
-
- 1> Create the subdirectory C:\dbdata\"APP"
- 2> Move all Main files there
- 3> Update the Main.Dbf database
- 4> Begin the Create program for you.
-
- If you later needed to simply run the Create program, you would:
- 1> Enter Dbase normally (DBASE <Enter>)
- 2> Change subdirectory (!CD \DBDATA\APP <Enter>)
- 3> Begin the Create program (DO \DBDATA\CREATE\CREATE <Enter>)
-
- But for now, the system will start Create for you.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 4
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C4.0 Running CREATE
-
- At this point you should be in the Create program. If not,
- we would start it by entering:
-
- DO \DBDATA\CREATE\CREATE <Enter> (while in Dbase, and from the
- \DBDATA\APP subdirectory)
-
- The resultant menu is shown in Figure C-2.
-
- Application Generator System ---- RL Coppedge, CDP
-
-
- You should run these steps in approximate order...
- The name of the database is : APP
- You can:
-
- 1> Edit the Main.Dbf database file
- 2> Create or Modify your Database
- 3> Build the Shell Create.DBF
- 4> Edit the Create.DBF
- 5> Build the Support Files
-
- Which one do you want (1-5,Q)
-
- Figure C-2 Create's Main Menu
-
- C4.1 The MAIN Database
-
- There are actually three databases involved in an AGS
- application. The first (and easiest by far) is the database
- MAIN.DBF. This database has one record, and really only two
- critical fields, and four optional fields. Only the first field
- (NAME) is absolutely necessary; the remainder are optional. The
- structure looks something as in Figure C-4 (acquired using a
- Dbase LIST STRUCTURE Command):
-
-
- Structure for database: C:main.dbf
- Number of data records: 1
- Date of last update : 03/19/88
- Field Field Name Type Width Dec
- 1 NAME Character 8
- 2 TITLE Character 25
- 3 BELL Logical 1
- 4 CONFIRM Logical 1
- 5 DELETED Logical 1
- 6 EXACT Logical 1
- 7 DBASE_PTH Character 25
- ** Total ** 63
-
- Figure C-3 The Main Database
-
- 5
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
-
- The fields are used for:
-
- 1. NAME. Lets the AGS know what database it is currently
- using. It should be the name of the Dbase file minus the ".DBF"
- extension. Example: If we are using our App database, then the
- field would simply contain "APP" (minus the quotes).
-
- 2. TITLE. Appears on many of the screens. A 25 character or
- less title that describes what the database is. Optional, but
- recommended.
-
- 3. BELL. Sets the Bell option initially ON or OFF. You can
- change it later through the housekeeping function. See the Dbase
- III+ documentation for further description of the Bell.
-
- 4. CONFIRM. Sets the Confirm option initially ON or OFF. You
- can change it later through the housekeeping function. See the
- Dbase III+ documentation for further description of Confirm.
-
- 5. DELETE. Sets the Delete option initially ON or OFF. You
- can change it later through the housekeeping function. See the
- Dbase III+ documentation for further description of Delete.
-
- 6. EXACT. Sets the Exact option initially ON or OFF. You can
- change it later through the housekeeping function. See the Dbase
- III+ documentation for further description of Exact.
-
- 7. DBASE_PTH. Lets the system know where Dbase III+ is
- residing, so that the initial program (App.prg) will be placed
- properly.
-
- Now, this database has only one record, which is originally
- empty. If that record does not have information edited to it
- with the Application default information prior to anything else
- happening, Create will not work, AGS will not work, nothing will
- work. If it is ever moved, Create will not work, AGS will not
- work, nothing will work. Hopefully you get the idea. AGS is not
- (at this point) terribly intelligent for handling errors here, so
- you have to keep track of this mostly yourself.
-
- Changing Main.DBF
-
- Select option #5 in the Create Main Menu. The screen shown
- if Figure C-4 will show up. Simply enter the information
- according to your particular desires.
-
- You can change any field in Main at any point in time even
- after generation of the system...except NAME and DBASE_PTH.
- Don't ever change them.
-
-
-
- 6
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
-
- Application Generator System ---- RL Coppedge, CDP
-
-
- For the Database within this Directory:
-
- What is the Name of the Database test
- What is the Database Title : Sample DB
-
- A 'Y' response corresponds to 'ON'
-
- What is the Default Bell Setting : N
- What is the Default Confirm Setting : N
- What is the Default Deleted Setting : N
- What is the Default Exact Setting : N
- What is the Directory Name for where Dbase is ___________
-
- Figure C-4 Main.Dbf Entry Screen
-
- C4.2 Creating your APP database
-
- Selecting Option #2 from Creates main menu (Figure C-2) will
- help you in creating (originally) or modifying (changing later)
- the structure of your database. The system will display the
- choices found in Figure C-5:
-
-
- Application Generator System ---- RL Coppedge, CDP
-
-
- For the database : App
- This Database Does NOT yet Exist
-
- Are you ready to:
-
- (C)reate your database structure
- (M)odify your database structure
- (E)rase your database and try again
-
- Which one do you want to do (C,M,E, (Q)uit)
-
- Figure C-5 Creating the Database
-
- Basically by selecting any of these options you can change the
- structure of your database. The program simply invokes the Dbase
- command "Create" or "Modify structure". Refer to your Dbase III+
- documentation for more information.
-
- C4.21 Changing Your Structure
-
- Should the need arise after you've created your system and
- have been using your database, and then you need to change the
-
- 7
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- structure, you have the following options:
-
- 1> Go into the Create.Dbf manually (Dbase Edit) and make
- necessary changes after modifying APP.dbf Then DO Create but DO
- NOT CREATE SHELL CREATE.DBF! and rebuild files.
-
- 2> Treat it as a new application and reenter information.
-
- C4.3 The Create Database
-
- By far this is the toughest part of the system, not in
- technical entry, but in your own design. If done properly, the
- system you want will operate smoothly. If not, you're in for a
- bit of trouble. Take the time to read the AGS user documentation
- prior to doing this. Design your database carefully, and with
- all of this in mind. Remember that the best software in the
- world can't help poor planning. Perhaps this package even more
- so.
-
- The CREATE database defines each field in the database, and
- their role. Each record in CREATE represents a field in the
- database APP. CREATE defines what the characteristics are of the
- field as it relates to other fields, and to the main program.
- The structure is thus (again with the Dbase LIST STRUCTURE
- Command) shown in Figure C-6:
-
-
- Structure for database: C:create.dbf
- Number of data records: 0
- Date of last update : 03/13/88
- Field Field Name Type Width Dec
- 1 FIELD_NAME Character 10
- 2 FIELD_TYPE Character 1
- 3 FIELD_LEN Numeric 3
- 4 FIELD_DEC Numeric 3
- 5 FIELD_DSC Character 40
- 6 FIELD_DSC2 Character 40
- 7 FIELD_TITL Character 15
- 8 FIELD_QRY Character 20
- 9 SORT Logical 1
- 10 UPPER_CSE Logical 1
- 11 SORT_TITL Character 20
- 12 INDEX_NM Character 8
- 13 SORT_LTTR Character 1
- 14 INIT_CVAL Character 80
- 15 INIT_DVAL Date 8
- 16 INIT_NVAL Numeric 19 5
- 17 INIT_LVAL Logical 1
- 18 SRCHBRO Logical 1
- 19 VERIFY Logical 1
- ** Total ** 274
-
-
- 8
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Figure C-6 The CREATE Database
-
- A lot of the records in CREATE (each record represent APP's
- fields, remember) have several of their fields blank, since
- several CREATE fields are highly specialized. The first four
- fields you should recognize as Dbase attributes. The fields are
- as follows:
-
- 1 FIELD_NAME Character 10
-
- Field_name is the name of the field as it appears in the database
- APP. It is capitalized.
-
- 2 FIELD_TYPE Character 1
-
- Field_type is the type of field it is. Either "L"(logical),
- "N"(Numeric), "C"(Character), "D"(Date) are allowed.
-
- 3 FIELD_LEN Numeric 3
-
- Field_len is the maximum length the field can be.
-
- 4 FIELD_DEC Numeric 3
-
- If the field is a numeric one, than Field_dec shows how many
- decimal places there can be.
-
- 5 FIELD_DSC Character 40
-
- Field_dsc is the first line of text that will show up on the help
- screen for this variable (see Section X, "Help" main AGS user
- Documentation)
-
- 6 FIELD_DSC2 Character 40
-
- Field_dsc2 is the second line of text that will show up on the
- help screen for this variable (see Section X, "Help" main AGS
- user Documentation)
-
- 7 FIELD_TITL Character 15
-
- Field_titl is the description used by the data entry screen to
- refer to the field.
-
- 8 FIELD_QRY Character 20
-
- Field_qry is the description used by the Sort Option screen.
- This should have a value only for values to be included as a Sort
- Option.
-
- 9 SORT Logical 1
-
-
- 9
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Sort should be set .T. (Yes) if:
- a> the value is a Sort Option.
- and b> if during sort, you would want Subtotals on this field.
-
- 10 UPPER_CSE Logical 1
-
- Upper_cse should be .T. (Yes) if:
- a> the value is a Sort Option.
- and b> UPPER CASE VALUES = lower case values.
-
- 11 INDEX_NM Character 8
-
- If the field is a Sort Option, this is the name of the index file
- under which the index is stored.
-
- 12 SORT_LTTR Character 1
-
- If the field is a Sort Option, this is the letter it can also be
- referred to by on the Sort Option screen.
-
- 13 INIT_CVAL Character 75
-
- If the field is a Character field, this is the initial value the
- field would have during initial data entry.
-
-
- 14 INIT_DVAL Date 8
-
- If the field is a Date field, this is the initial value the
- field would have during initial data entry.
-
- 15 INIT_NVAL Numeric 19 5
-
- If the field is a Numeric field, this is the initial value the
- field would have during initial data entry.
-
- 16 INIT_LVAL Logical 1
-
- If the field is a Logical field, this is the initial value the
- field would have during initial data entry.
-
- 17 SRCHBRO Logical 1
-
- If the field is to be included in the output of the Search or
- Browse function, this is a .T. (Yes).
-
- 18 VERIFY Logical 1
-
- If the field is going to have verification checks performed on
- it, this flag should be set to .T. (Yes).
-
-
-
- 10
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- 19 BLANK_FLD Logical 1
-
- If this field MUST have a value for the record to be "legit",
- this field should be .T. (Yes). This will come into play when
- running the "Delete Blank Records" Function, in Housekeeping.
-
- C4.4 Initializing the CREATE Database
-
- Assuming you've already defined the APP database (or
- whatever you're calling yours), you've still got to initialize
- the CREATE database to properly reflect the various fields. To
- do that, you must, from the CREATE program, build the Shell of
- Create.Dbf. So from the Create program, Choose Option #1, "Build
- the Shell Create.DBF". The program will then verify you wish to
- do that, and make a version of Create.dbf which has one record
- for each field in the APP database, with the first four fields in
- each record properly filled in.
-
- C4.3 Editing the CREATE Database
-
- Now you want to add some of the specific information into
- the Create database to add some spice to it all. Choose option
- #2, "Edit the Create.DBF". This function will then ask you if
- you want to do the fields one at a time or all of them. Choose
- to do all of them (you'd do one at a time for fine tuning, when
- you become more adept at using this beastie). The system will
- then choose the first field in the APP database (first record in
- the CREATE), and display what is shown if Figure C-7.
-
-
- Field Name :MR_MRS Type: C
- Length : 12 Decimal Places 0
-
- What is the Data Entry Label for this Field :Mr,Mrs,Ms,Dr
- Enter the help description for the variable:
- Line #1:
- Line #2:
-
- Answer these only for Sort Option Variables
- What is going to be Sort Option Desc? Mr,Mrs,Ms,Dr
- Do you want subtotals on a Search with this SO? F
- What do you want to call the Index File?
- What's the Letter used on the SO screen?
- Should the sorting be done all uppercase? F
-
- Should the field display in the Search/Browse F
- Is this a verifiable Field? F
- Are Blank Fields allowed? F
- Enter Default Value for Data Entry:
- Mr.
-
- Figure C-7 Create Edit Screen
-
- 11
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
-
- (SO Means Sort Option, by the way).
-
- When you've answered all of the questions, the computer will
- ask "(S)ame, (N)ext, (P)revious, (Q)uit". By selecting one of
- those choices, you choose which field to change, if any.
-
- For most fields in your database, you're only going to have
- to fill in the first three lines. More important ones (the sort
- fields) will take a little longer. Once you're done, choose "Q".
-
- C4.5 Building the Create Files
-
- Now you're ready for the final step in preparing your
- Application...building your Create files. Choose Option #3,
- Build the Support Files. The system will then respond with a
- window as shown in Figure C-8:
-
-
- Do you want to Run this? Y
-
- Do you want the Create default Y or N Y
-
- Figure C-8 Create's Initial Screen
-
- This Section will build the following programs:
-
- I(Database Name).PRG
- C(Database Name).PRG
- E(Database Name).PRG
- R(Database Name).PRG
- P(Database Name).PRG
- T(Database Name).PRG
- S(Database Name).PRG
- PR(Database Name).PRG
- W1(Database Name).PRG
- W2(Database Name).PRG
- M(Database Name).PRG <----This one resides in the same
- directory as Dbase
-
- Create will also build empty database files (with 1 blank record)
- for use in the verification function:
-
- (Field Name).DBF
-
- Each file has a critical role to play in the AGS, and is used
- extensively throughout the system. CREATE builds them.
-
- As before, the system will look to the what you've created
- in the Create.DBF database for information you've provided. It
- will then ask you to verify that you want to do this,and if the
- file defaults should be Yes or No Build. Initially, select the
-
- 12
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- values as they are shown in the Figure C-8. After that, the
- system will display what is shown in Figure C-9. As you can see,
- there are several files that must be generated in order for the
- system to be able to run on your particular database.
-
-
-
-
- E> Entry Screen File...Currently: Build
- I> Initialize File...Currently: Build
- P> Public File...Currently: Build
- T> Transfer File...Currently: Build
- S> Save File...Currently: Build
- PR> Print File...Currently: Build
- W1> WPS Convert 1 File...Currently: Build
- W2> WPS Convert 2 File...Currently: Build
- C> C Sort Menu File...Currently: Build
- R> Reindex File...Currently: Build
- V> Verify File...Currently: Build
- M> Main Program File...Currently: Build
-
- Hit the letter on the left of the line you want to change
- or Q to end
-
- Figure C-9 CREATE's Main Screen
-
-
- At the end of each line are either the word(s) Build or No
- Build. If you had selected N earlier, they would have started
- out as 'No Build'. To change one, just enter the letter(s) on
- the left that corresponds to the file you want to change.
- They'll toggle from 'Build' to 'No Build'. For the first run you
- want them all to be Build, but later on you may only want to
- regenerate some of them. When you're satisfied, simply enter
- 'Q<Enter>' and the system will then build all files (10 in all).
- The actual names of these files are the letter on the left plus
- the Application name plus the extension ".PRG". So, for
- example, the print file would be PRAPP.PRG.
-
- When you enter Q and hit <Enter>, the system will display
- messages that it's building each file. Once done, the system
- will ask you if you want to Reindex your Database. If you say
- no, then the system will bomb the first time you do data entry.
-
- Once create is done, you have the option of erasing the
- Create programs. This will erase all Create-related programs
- (only in the \DBDATA\APP directory. They're also in the
- \DBDATA\CREATE, remember). (You don't need them again unless you
- make changes to the database structure). Do not do this until
- you're sure everything works! You can rerun Create, and choose
- to delete the files later!
-
-
- 13
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- If you need to run Create again after deleting the Create
- files, simply: 1> Move all ".PRG" files from the \DBDATA\CREATE
- subdirectory, 2> Run Create again!
-
-
-
-
- C4.6 A list of Create Files
-
- The following is a list of all files involved in the Create
- process:
-
- CREATE.PRG Driver of Create process
- CRMAIN.PRG Edits Main.dbf file
- CRDBBLD.PRG Helps build database
- CRSHELL.PRG Builds Shell Create.dbf
- CREDIT.PRG Edit Create.dbf
- CRBUILD.PRG Builds AGS Support Files
- CRDELETE.PRG Deletes Create programs
- EBLD.PRG Builds Data Entry File
- IBLD.PRG Builds Data initialize File
- PBLD.PRG Builds Public Variable File
- TBLD.PRG Builds Transfer Memory -> Disk File
- SBLD.PRG Builds Transfer Disk -> Memory File
- PRBLD.PRG Builds Print File
- W1BLD.PRG Builds 1st Conversion File for WP Conversion
- W2BLD.PRG Builds 2nd Conversion File for WP Conversion
- CBLD.PRG Builds Sort Menu Program
- RBLD.PRG Builds Reindex File Program
- MBLD.PRG Builds initial program (moves from
- \DBASE to \DBDATA\APP)
- VBLD.PRG Builds empty Verify Databases
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 14
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C5.0 Modifying Generated Code and Databases.
-
- Once Create has done its duty, you're close but not quite
- there. First, you must make very small modifications to the
- created code, so that it will be more understandable by the user.
- Generally speaking, these modifications are only necessary for
- data entry screens or display screens. In these cases, this is
- limited to making them more palatable for the user and grouping
- the information more logically for the application.
-
- C5.1 A List of Generated Code and Files
-
- The following is a list of all Files created by the Create
- process:
-
- Name Used In: Description:
- EAPP.PRG I Data Entry Screen
- IAPP.PRG I Initialize values for new records
- PAPP.PRG I Sets all memory variables public
- TAPP.PRG I Transfers memory to disk
- SAPP.PRG I Transfers disk to memory
- PRAPP.PRG I Hardcopy printout (Inquiry/Entry)
- W1APP.PRG W Initialize variables for WP Conv.
- W2APP.PRG W Initialize more variables for WP Conv.
- CAPP.PRG ISW Chooses Sort Order for Access to Info.
- RAPP.PRG H Performs Reindexing of Data
- APP.PRG B Starts whole system
-
- Used In:
- I Inquiry/Entry
- S Search
- W WP Conversion
- H Housekeeping
- B Beginning
-
- Also created are database files (named after the field in
- the APP database) which are used for verification (see Section
- C6.0).
-
- C5.2 Modifying Create-Generated Code
-
- There are basically two files that usually have to be
- modified. They are the data entry module (EAPP.PRG) and the
- hardcopy printout file (PRAPP.PRG). These two screens will work
- without changes. But they'll work even better if you make some
- simple changes.
-
- To see how your data entry screen will appear, enter the
- following:
-
- DO PAPP (this will make your variables public)
- DO IAPP (this will give them initial values)
-
- 15
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- DO EAPP (this will display your d/e screen)
-
- Your screen should show up...if you like it, fine. But I
- suggest you move things around so that they make a little more
- logical order.
-
- If you use a text editor within Dbase (I prefer Borland's
- Sidekick) you can take a look at your screen after changing it by
- simply running EAPP (you don't have to run the other two again).
- Of course, you can also use the Dbase Editor (Modify Command
- EAPP). Either way, through some relatively simple changes, it
- would be easier for a relative novice to use and understand. The
- same type of modification is recommended for the PRAPP.PRG
- program file.
-
- Another key thing to note is that if your database contains
- more than 24 fields, there are two files which MUST be modified
- (the calculated @..SAY's will be off of the screen). The files
- are:
-
- E<App>.PRG (the data entry screen)
- W1<App>.PRG (the WP conversion selection screen)
-
- The system will display a message to this effect when
- needed.
-
- (all of this needs to be done within Dbase)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 16
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C6.0 Modifying the Main Programs.
-
- The following Main files are used by the AGS:
-
- File Name Note Description
- Marker
-
- MENU (1) Main Menu (Sec. 3.0, Fig. 3-1)
- MAINT (2) Inquiry/Entry (Sec. 4.0)
- REPORT (3) Reports (Sec. 5.0)
- TRANS (3) File Transfer (Sec. 6.0)
- WPSCONV : (2) WP Conversion (Sec. 7.0)
- CVWPS Process for WP Conv
- WSMOD Module for Wordstar 2000
- WPMOD Module for Word Perfect
- WPSMOD Module for WPS PC+
- DSP4MOD Module for Display Write IV
- DBMOD Module for Dbase III+
- CVWMAC External Macro Commands
- SEARCH (2) Search (Sec. 8.0)
- VERVAR Verify variable names
- HOUSE Housekeeping (Sec. 9.0)
- BACKUP Data/Program Backup (Sec 9.1)
- * VERIFY Data Verification (Sec.9.3)
- CONTROL Sets Control options (Sec 9.4)
- BLANK Deletes Blank Records (Sec 9.5)
- PACK Erases deleted data (Sec. 9.6)
- HELP Help (Sec. 10.0)
- CVHLP Process for Help
- FILTER (2) Selection Criteria Maint. (Sec. 11.0)
- VEREDT Maintains list of Ver. Data (Sec. 12.0)
- REGINFO Where Do ya send da bucks(Sec 13.0)
-
- Multiple Use Programs:
-
- ERROR
- FLTGUIDE (4)
- FLTERR (4) Bad Selection Criteria mess. (Sec. 11.0)
- MANFLT (4)
- GETFLT (4) Chooses Selection Criteria (Sec. 11.0)
- LIGHTBAR (4),(5)
-
- Database:
-
- FLT Selection Criteria Database (Sec. 11.4)
- BROWSE Temporary Database for Browse
- (Sec. 4.0,11.0)
-
- Forms:
-
- FILTER Selection Criteria Rep Form (Sec. 11.0)
- VERIFY Verify Report Form
-
- 17
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
-
- MENUBAR.BIN (5) Both files used for loaded
- DBWIND.BIN (6) additional modules.
-
-
-
- !-The databases used by this program has a potential modification
- of some type or another, and are covered in this Section (C6.1).
-
- *-These files must be contained in the \DBDATA\MAIN
- subdirectory. All other files listed should be in the
- \DBDATA\APP subdirectory.
-
- Note Marker:
-
- 1- Main menu, loads the files: Menubar.bin, Dbwind.bin, sets
- the error program Error.prg.
- 2- Uses the set of Selection Criteria programs.
- 3- Basically shell menu programs, which can be added to or
- modified as needed.
- 4- All part of the Selection Criteria entry routine.
- 5- Supplied through Ashton-Tate's Dbase Utilities, Volume I
- (good book!)
- 6- Compliments of who, I honestly don't know...all I have is
- this file which works kinda nice...
-
- C6.1 Data Verification
-
- Verification is a function that must be defined
- independently of each database application. When you run the
- Create function, you specify the fields which would need
- verification. A Verify database is created for each of those
- fields (named after the fields themselves). Each Verify database
- initially contains one record each. The database has the
- structure as shown in Figure C-10.
-
- _____________________________________________________________
- | |
- | Structure for database: C:verify.dbf |
- | Number of data records: 1 |
- | Date of last update : 03/18/88 |
- | Field Field Name Type Width Dec |
- | 1 FIELD_NAME Character 9 |
- | 2 F_LOW_VAL Numeric 10 4 |
- | 3 F_HIGH_VAL Numeric 10 4 |
- | 4 F_OLD_DATE Date 8 |
- | 5 F_NEW_DATE Date 8 |
- | 6 FLD_VAL Character 80 |
- | 7 BLANKS Logical 1 |
- | ** Total ** 127 |
- |___________________________________________________________|
- Figure C-10 VERIFY Databases
-
- 18
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
-
- Verification works on three data field types, Character,
- Numeric, and Date. There is no particular verification test on
- logical data types (I couldn't think of why there should be one).
- Both numeric and date checks are low value >= data <= high value
- (greater or equal to 6 but less or equal to 12, that sort of
- thing), whereas character checks against a database (with the
- same name as the field it's checking) which contains nothing but
- a list of legitimate values for that field.
-
- To prepare the verify program for use, simply follow these
- steps:
-
- 1> Identify each field that needs verification, and the
- limits (low and high -end, in the case of numeric or date fields.
- A list of good values, in the case of character fields) that each
- field has.
-
- 2> Edit (and append) the Create database so that each
- record has the Verify field set '.T.'.
-
- 3> Run the Create function. If already run, run it again
- with only the V-function chosen as "Build":
-
- ("V> Verify File...Currently: Build").
-
- 4> Edit the Verify databases that Create made. Remember
- that the name of the actual database file is the field name and
- with the same structure as Figure C-9. You would edit them as
- follows:
-
- Date Fields: Edit the 1st record so that F_OLD_DATE
- contains the oldest acceptable date, and F_NEW_DATE contains the
- most recent.
-
- Numeric Fields: Edit the 1st record so that F_LOW_VAL
- contains the smallest acceptable number, and F_HIGH_VAL contains
- the most largest.
-
- Character Fields: Append the database so that it has one
- record for each acceptable value. Each record would have the
- variable set to equal an acceptable value.
-
-
-
-
-
-
-
-
-
-
-
- 19
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C7.0 Starting your System
-
- Real simple here. There are three ways:
-
- 1> From the Dbase III+ dot prompt (and subdirectory), type in:
-
- DO APP <Enter>
-
- 2> From the Dbase III+ dot prompt and the APP subdirectory:
-
- DO MENU <Enter>
-
- 3> From the C> prompt:
-
- first move to the Dbase III+ subdirectory (assuming that \DBASE
- is it):
- CD \DBASE <Enter>
- and then enter the Dbase III+ command:
- DBASE APP <Enter>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 20
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C8.0 Adding more Applications
-
- There is no theoretical limit to the number of applications
- your system can have, other than standard disk capacity. When
- you add a new system, you need to do the following (let's assume
- you want to add an application called Track):
-
- 1> DBASE AGSCR <Enter> (create new subdirectory)
- 2> TRACK <Enter> (when it asks for DB name)
- 3> DO \DBDATA\CREATE\CREATE <Enter> (although AGSCR will go
- into Create, just make sure I
- mention it)
- 4> MODI COMM ETRACK <Enter> Modify your entry screen
- (if needed)
- 5> MODI COMM PRTRACK <Enter> Modify your print program
- (if needed)
- 14> DO MENU <Enter> Run it!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 21
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C9.0 Don't do the Following!
-
- There are some things you shouldn't do with your AGS. They
- include:
-
- a> Defining more than four Sort Options. (If the users of
- this system let me know there's a need, more can be added)
-
- b> Using Memo fields. (Future Release)
-
- c> Use the following as field or application names:
-
- Create
- ?Bld (any letter followed by "Bld")
- Create1
- Browse
- Flt
- Main
- Name
- Some others...in the registered version I will include
- a variable map. If you run into really bizarre problems, that
- could be the reason. Rename you Dbase variables and try again.
-
- d> Do not use fields with the first 6 letters being
- identical to one another.
-
- e> Do not change the Create.dbf directly (through Edit,
- etc) without being sure of what you're doing!!
-
- f> At least have 1 indexed field in the database.
-
- g> Don't hesitate to let me know what kind of improvements
- you'd like to see in future releases!
-
- g> Give up...
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 22
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C10.0 Registration
-
- Although this is a fully functional system, there are
- several things that are left out. Amongst them are:
-
- Specific technical documentation.
- Multiple Screens for Data Entry.
- User Classification.
- Data Values based on Formulas.
- Multi-field Sort Orders.
- Multi-Database capabilities.
- Sample Systems.
- Advanced Help Capabilities.
- Selection Criteria based on Functions.
- Better Report Handling.
- Faster running.
- Support.
-
- YES I plan to have a Dbase IV version...
- (If Ashton-Tate doesn't beat me to it)
-
-
- The AGS has already been used in several places, and for
- many functions. They include:
-
- Inventory Order Entry Management
- Personnel Housing Title Transfers
- Housing Financial Analysis Mailing List Maintenance
- Travel Agent Customer Maintenance Union skills tracking
- Computer Maintenance Simple A/R
- Remote Data Entry Account Tracking
- Get the idea?
-
- As you can hopefully see, there really is no limit to the
- type of application here. The version you have here has a limit
- of 50 records for each database placed on it. By registering you
- version, you would be given an unlimited use version. In some
- cases, however, there are some changes which would make the
- system run even smoother. But in order to make those changes,
- you have to have a special registered system, which is delivered
- with full Dbase code intact! (Shareware distributed version
- contains executable only...)
-
- But how do I register? (I hear you cry) Simple. Send
- money (to support the Shareware concept) to:
-
-
- RL Coppedge, CDP CIS #: 72117,165
- 446 Richmond Pk E 402A Genie: R.COPPEDGE1
- Richmond Hts, Ohio Cleve Free-Net: AE069
- 44143
-
-
- 23
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- How much should you send? I leave that up to a debate between
- you, your wallet and your conscience. (C'mon, Conscience!!)
-
- A general suggestion:
-
- single users: Companies, Consultants, etc.
- Executable: $50 $100
- W/Code: $100 $250
-
- Code version also includes some technical documentation
- explaining what it is you see.
-
- Obviously, the more support of this type, the more likely it is
- that I would continue to improve this system along the shareware
- school of thought. There are a lot of improvement currently in
- the test version 2.1...
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 24
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C11.0 Thanks and Thoughts
-
- This has been a long time in coming. I first thought of
- this back when working on a system on an Apple II in CP/M. The
- inherent limitation of Dbase III+ I have always thought was that
- without special programming, your data edits were always directly
- on the database file itself (I'm sorry, but Ctrl^Q doesn't make
- it with me). Certainly for new users having to depend upon
- bizarre key combinations this could be difficult. So I tried to
- build a system that would automatically design, build and
- maintain the relationship between the memory variable and the
- database field it represents.
-
- With such capability, it was relatively easy to then
- generate menu's, options and the like. Most of this was a
- natural progression driven by my clients needs. Some were simply
- my philosophy, which is keep the function digestible. If not,
- the snazziest functions in the world aren't going to help.
-
- In spite of Dbase's many additional functions, an
- overwhelming need for DBMS's lies not in the functions, but in a
- smooth way to take ones ideas and requirements and move them from
- thought to paper to keyboard to database. This will hopefully
- help.
-
- Unfortunately, the documentation, although lengthy, stinks.
- I apologize to those who forced themselves through it. Keep in
- mind, though, that with the system understood, the AGS can
- generate for you a complete database management/entry system,
- with the following features:
-
- 1> Entry screens in English
- 2> Sorted data
- 3> Browse capabilities
- 4> Data Verification
- 5> Help Screens
- 6> Word Processing Interface
- 7> Free-Form Query
- 8> Controlled Data Entry
- 9> Open Report Menu
- 10> Open Communications Menu
- 11> More, I'm sure
-
- ...all in about 15 minutes. Plus, if you maintain a number of
- systems (like I do), it makes maintaining them much easier.
- Training and documentation is also easier.
-
- The bottom line is, Does this work for you? I guarantee
- that it probably won't for you. I also guarantee that it you toy
- with it and play around, you might be pleasantly surprised....
-
- Later!!! Bob
-
- 25
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-
-
-
-
-
- Section C12.0 Limitations.
-
-
- I take no responsibility for any loss of assets, tangible or
- otherwise, which occur through the use of this software. I will
- be more than happy to assist anyone in the use, but I refuse to
- be a sitting duck in a lawsuit. If you do need help from me, be
- polite and you're much more likely to get it.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 26
- Copyright 1988 - RL Coppedge, CDP All Rights Reserved
-
-